<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Java/Android UPnP library and tools</title>
</head>

<body>

<div id="content-body">

    <h1>
        Cling - Java/Android UPnP library and tools
    </h1>

    <p>
        Cling is an effort to create a UPnP-compatible software stack in Java. The project's goals are
        strict specification compliance, complete, clean and extensive APIs, as well as rich
        SPIs for easy customization.
    </p>

    <p>
        The current release of Cling is <em>2.1.2-SNAPSHOT (xxxx-xx-xx)</em>: <a href="/projects/download/">Download</a>
    </p>

    <p>
        Read <a href="/projects/cling/core/manual/cling-core-manual.html#chapter.GettingStarted">this
        chapter of the manual</a> for a simple Cling usage example. Have a look at the
        <a href="https://github.com/4thline/cling/tree/master/demo/android">Android application examples</a>.
    </p>

    <p>
        Main modules of Cling are:
    </p>

    <dl class="freshlinks">

        <dt><strong><a href="/projects/cling/core/">Cling Core</a></strong></dt>
        <dd>
            <p>
                An embeddable Java library that implements the
                <a href="http://www.upnp.org/resources/documents.asp">UPnP Device Architecture 1.0</a>. Use
                Cling Core to expose services with a UPnP remoting interface, or to write control point applications
                that discover UPnP devices and utilize their services. You can also integrate
                <a href="/projects/cling/core/manual/cling-core-manual.html#chapter.Android">Cling Core as
                an Android UPnP/DLNA library in your applications</a> (platform level 15/4.0 required).
            </p>
        </dd>

        <dt><strong><a href="/projects/cling/support/">Cling Support</a></strong></dt>
        <dd>
            <p>
                Optional classes and useful infrastructure for developing and controlling UPnP services with
                Cling Core; extensions that simplify working with UPnP media servers and renderers,
                <a href="/projects/cling/support/manual/cling-support-manual.html#section.PortMapping">NAT port
                mapping on routers</a>, etc.
            </p>
        </dd>

        <dt><strong><a href="/projects/cling/workbench/">Cling Workbench</a></strong></dt>
        <dd>
            <p>
                A desktop application for browsing UPnP devices and interacting with their services.
            </p>
        </dd>

        <dt><strong><a href="/projects/cling/mediarenderer/">Cling MediaRenderer</a></strong></dt>
        <dd>
            <p>
                Standalone <a href="http://www.upnp.org/resources/documents.asp">UPnP MediaRenderer</a>, based on gstreamer.
            </p>
        </dd>

    </dl>

    <p>
        Cling is Free Software, distributed under the terms of
        the <a class="externalLink" href="http://www.gnu.org/licenses/lgpl-2.1.html">GNU Lesser General Public
        License</a> <strong>or at your option</strong> the <a href="http://opensource.org/licenses/CDDL-1.0">Common
        Development and Distribution License</a>.
    </p>

</div>

</body>
</html>
